/*
* This file is a part of the open-eBackup project.
* This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0.
* If a copy of the MPL was not distributed with this file, You can obtain one at
* http://mozilla.org/MPL/2.0/.
*
* Copyright (c) [2024] Huawei Technologies Co.,Ltd.
*
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
*/
package openbackup.system.base.common.enums;

/**
 * 副本产生的类型
 *
 */
public enum CopyGenerationType {
    /**
     * The copy is generated by backup
     */
    BACKUP("Backup"),
    /**
     * The copy is generated by cloud archive
     */
    CLOUDARCHIVE("CloudArchive"),
    /**
     * The copy is generated by live mount
     */
    LIVEMOUNT("live_mount"),
    /**
     * The copy is generated by replicated
     */
    REPLICATED("Replicated"),

    /**
     * The copy is generated by Imported
     */
    IMPORTED("Imported"),

    /**
     * 反向复制
     */
    REVERSE_REPLICATION("ReverseReplication"),

    /**
     * 级联复制
     */
    CASCADED_REPLICATION("CascadedReplication");

    private final String type;

    CopyGenerationType(String feature) {
        this.type = feature;
    }

    /**
     * 根据类型获取保留类型枚举类
     *
     * @return type
     */
    public String getType() {
        return type;
    }
}
